﻿
var Email = {
    model: function (d = {}) {
        this.Title = d.Title || "单行文本";
        this.EnTitle = d.EnTitle || "";
        this.Tips = d.Tips || "";
        this.Name = d.Name || 'lg' + lg.GetSN(6, 10);
        this.Value = d.Value || "";
        this.ExportName = d.ExportName || "";
        this.Width = d.Width || "100%";
        this.Required = d.Required || false;
        this.IsRender = d.IsRender != undefined ? d.IsRender : true;
        this.Range = d.Range || [0, 0];
        this.IsShow = d.IsShow || false;
        this.IsExport = d.IsExport || false;
        this.IsWhere = d.IsWhere || false;
        this.WhereKey = d.WhereKey || "精确匹配"
    },
    component: {
        name: "lg-form-email",
        data: {
            props: {
                items: {
                    type: Array,
                    default: []
                },
                value: {
                    default: ""
                },
                data: {
                    type: Object,
                    default: {}
                },
                renderType: {
                    type: Number,
                    default: 0
                }
            },
            template: `
			<div :class="['lg-form-item',{'lg-ver-error':data.error},{'pointer-none':renderType==1}]" :style="{'width':data.Width}">
              <div class="lg-form-block">
			      <div class="lg-form-title">
			         <div class="lg-form-title-item">
                        <i v-if="data.Required">*</i>
			            <span class="cn">{{data.Title}}</span>
                        <span class="en">{{data.EnTitle}}</span>
			         </div>			    
			      </div>
			      <div class="lg-form-control lg-form-mark">
					<span class="lg-form-mark-icon">
                       <i class="fa fa-envelope-o"></i>
                    </span>
					<input type="text" class="lg-input" :value="value" @input="$emit('update:value', $event.target.value)" v-on:blur="$emit('done',data)">
				  </div>
              </div>
              <div class="lg-form-block">
                  <div class="lg-form-tip"><p>{{data.Tips}}</p></div>
			      <div class="lg-form-ver" v-if="data.error">{{data.errMsg}}</div>
              </div>
			</div>
            `
        }
    }
}

Email.model.prototype.verify = function () {
    var required = lg.regx.required(this.Value);
    if (this.Required && !required) {
        return { state: false, msg: "必填项不可为空!" };
    }
    if (required && !lg.regx.email(this.Value)) {
        return { state: false, msg: "不是有效的邮箱格式！" };
    }
    return { state: true, msg: "" };
}

export { Email }